package com.szy.douyou_article.dao;

import com.baomidou.mybatisplus.annotation.*;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;


/**
 * @author sunziyan
 * @date 2022/3/1
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("articles")
public class Article {

    /**
     * 主键
     */
    @TableId(type = IdType.AUTO)
    private Long articleId;

    /**
     * 对应的用户id
     */
    private Long userId;

    /**
     * 帖子标题
     */
    @NotBlank(message = "帖子标题不能为空")
    private String articleTitle;

    /**
     * 帖子描述
     */
    @NotBlank(message = "帖子描述不能为空")
    private String description;

    /**
     * 帖子内容
     */
    @NotBlank(message = "帖子内容不能为空")
    private String articleContent;

    /**
     * 帖子评论数
     */
    private Integer articleCommentNumbers;

    /**
     * 帖子浏览量
     */
    private Integer articleViews;

    /**
     * 逻辑删除
     */
    @TableLogic
    private Integer deleted;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /*
    user表数据
    ------------------------------------------
     */
    /**
     * 该帖子用户名
     */
    @TableField(exist = false)
    private String userName;

    /*
    classification表数据
    --------------------------------------
     */

    /**
     * 该帖子分类id
     */
    @TableField(exist = false)
    private Long classificationId;
    /**
     * 该帖子分类名称
     */
    @TableField(exist = false)
    private String classificationName;
    /**
     * 该帖子分类描述
     */
    @TableField(exist = false)
    private String classificationDescription;




}
